Software architecture recovery using Conway's law
نویسندگان
چکیده
Architectural documentation is recognised as a mechanism for improving software quality and reducing development costs. However, many existing systems do not have any architectural documentation. To obtain the beneets of accurate architectural documentation, research suggests that we use tools to recover the architecture of a system, then continue to use these tools to keep the documentation up to date. This paper describes how the organization of system developers can be extracted and analysed to form an ownership architecture. According to Conway's law, the ownership architecture serves as a predictor of the concrete (as built) architecture, and also provides facts about the location of live design knowledge. To evaluate the usefulness of ownership architectures, we examined three large software systems: Linux 1 (800 KLOC), Mozilla (1.5 MLOC), and a commercial software development system (3.8 MLOC). Experience with these systems indicates that ownership archi-1 Linux is a registered trademark of Linus Tor-valds. Netscape Navigator is a registered trademark of Netscape Communications Corporation. Java is a registered trademark of Sun Microsystems, Inc. UNIX is a registered trademark, licensed exclusively through X/Open Company Ltd. Other names are properties of their respective owners. tectures can be a powerful addition to a reverse engineering endeavour.
منابع مشابه
What do I think about Conway's Law now?
As well as reviewing Patterns the conference hosts a number of " Focus Groups " where participants discuss topics concerned with writing software, software development in general and related topics. In July 2005 Lise Hvatum and myself hosted over four hours of discussion over two days on the subject of " Conway's Law. " This paper describes the groups conclusions and our own thinking on the sub...
متن کاملArchitectures, Coordination, and Distance: Conway's Law and Beyond
S e p t e m b e r / O c t o b e r 1 9 9 9 I E E E S o f t w a r e 6 3 Software engineering researchers have long argued that the architecture of a system plays a pivotal role in coordinating development work. Over 30 years ago, Melvin Conway proposed what has since become known as Conway’s Law—that the structure of the system mirrors the structure of the organization that designed it.1 This rel...
متن کاملIdentifying Coordination Problems in Software Development: Finding Mismatches between Software and Project Team Structures
Today’s dynamic and iterative development environment brings significant challenges for software project management. In distributed project settings, “management by walking around” is no longer an option and project managers may miss out on key project insights. The TESNA (TEchnical Social Network Analysis) method and tool aims to provide project managers both a method and a tool for gaining in...
متن کاملArchitekturerkennung aus Quellcode? Möglichkeiten und Grenzen anhand einer Fallstudie
The source code is the only really true structure in a software system's life cycle, let it be excellent or poor. Its structure-in-the-large, the architecture, is its most important technical artefact. Programming languages have no syntactical elements to express architectural structures like components or connections. Therefore architectural recovery is one of the most interesting topics in th...
متن کاملPathology of Legislation and Legal Approvals Related to Texture and Building Management
Today, the importance and special position of the historical texture and buildings in the city is completely obvious. However, the issue of protecting, supporting and restoring historical texture and valuable historical buildings in Iran is not seriously, scientifically and legally pursued by top level of management and popular demand. Historical texture and buildings are increasingly in danger...
متن کامل